Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>PostScript Printer Description</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/PostScript_Printer_Description"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-PostScript_Printer_Description rootpage-PostScript_Printer_Description skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">PostScript Printer Description</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><style data-mw-deduplicate="TemplateStyles:r1295905060">
/* start https://en.wikipedia.org/ */


.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}


/* end https://en.wikipedia.org/ */
</style><table class="infobox"><tbody><tr><th colspan="2" class="infobox-above" style="padding-bottom: 0.15em;background-color:#e0e0e0;">PostScript Printer Description</th></tr><tr><th scope="row" class="infobox-label" style="line-height: 1.2; padding-right: 0.65em;"><a href="Filename_extension" title="Filename extension">Filename extension</a></th><td class="infobox-data" style="line-height: 1.35;"><style data-mw-deduplicate="TemplateStyles:r886049734">
/* start https://en.wikipedia.org/ */


.mw-parser-output .monospaced{font-family:monospace,monospace}


/* end https://en.wikipedia.org/ */
</style><div class="monospaced">
.ppd</div></td></tr><tr><th scope="row" class="infobox-label" style="line-height: 1.2; padding-right: 0.65em;"><a href="Media_type" title="Media type">Internet media&nbsp;type</a></th><td class="infobox-data" style="line-height: 1.35;"><div class="monospaced">
text/plain, application/vnd.cups-ppd</div></td></tr><tr><th scope="row" class="infobox-label" style="line-height: 1.2; padding-right: 0.65em;"><a href="File_format#Magic_number" title="File format">Magic number</a></th><td class="infobox-data" style="line-height: 1.35;">*PPD-Adobe</td></tr><tr><th scope="row" class="infobox-label" style="line-height: 1.2; padding-right: 0.65em;">Developed&nbsp;by</th><td class="infobox-data" style="line-height: 1.35;"><a href="Adobe_Systems" class="mw-redirect" title="Adobe Systems">Adobe Systems</a></td></tr></tbody></table>
<p><b>PostScript Printer Description</b> (<b>PPD</b>) files are created by vendors to describe the entire set of features and capabilities available for their <a href="PostScript" title="PostScript">PostScript</a> printers.
</p><p>A PPD also contains the PostScript code (commands) used to invoke features for the <a href="Print_job" title="Print job">print job</a>. As such, PPDs function as drivers for all PostScript printers, by providing a unified interface for the printer's capabilities and features. For example, a generic PPD file for all models of HP Color LaserJet contains:
</p>
<div class="mw-highlight mw-highlight-lang-postscript mw-content-ltr" dir="ltr"><pre><span class="nf">*</span><span class="c1">% =================================</span>
<span class="nf">*</span><span class="c1">% Basic Device Capabilities</span>
<span class="nf">*</span><span class="c1">% =================================</span>
<span class="nf">*LanguageLevel:</span><span class="w"> </span><span class="nf">"2"</span>
<span class="nf">*ColorDevice:</span><span class="w"> </span><span class="nf">True</span>
<span class="nf">*DefaultColorSpace:</span><span class="w"> </span><span class="nf">CMYK</span>
<span class="nf">*TTRasterizer:</span><span class="w"> </span><span class="nf">Type42</span>
<span class="nf">*FileSystem:</span><span class="w"> </span><span class="nf">False</span>
<span class="nf">*Throughput:</span><span class="w"> </span><span class="nf">"10"</span>
</pre></div>
<p>which specifies that the printer understands PostScript Level 2, is a color device, and so forth. The PPD can describe allowable paper sizes, memory configurations, the minimum font set for the printer, and even specify a tree-based user interface for printer-specific configuration.
</p><p>A PPD is also often called <i>PostScript Page Description</i> instead of <i>Printer Description</i>, this is because PostScript has the concept of <i>Page Devices</i> where the PostScript page description configuration is read from or saved as a PPD file.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="CUPS">CUPS</h2></div>
<p><a href="CUPS" title="CUPS">CUPS</a> uses PPD drivers for all of its PostScript printers, and has even extended the concept to allow for PostScript printing to non-PostScript printing devices, by directing output through a CUPS filter. Such a file is no longer a standard PPD, but rather a "CUPS-PPD".
CUPS clients usually read the current PPD file from the server every time a new print job is created. It is located in <code>/usr/share/ppd/</code> or <code>/usr/share/cups/model/</code>.
</p>
<pre>/usr/share/ppd
├── cupsfilters
│&nbsp;&nbsp; ├── Fuji_Xerox-DocuPrint_CM305_df-PDF.ppd
│&nbsp;&nbsp; ├── Generic-PDF_Printer-PDF.ppd
│&nbsp;&nbsp; ├── HP-Color_LaserJet_CM3530_MFP-PDF.ppd
│&nbsp;&nbsp; ├── pxlcolor.ppd
│&nbsp;&nbsp; ├── pxlmono.ppd
│&nbsp;&nbsp; └── Ricoh-PDF_Printer-PDF.ppd
├── cups-pdf
│&nbsp;&nbsp; ├── CUPS-PDF_noopt.ppd
│&nbsp;&nbsp; └── CUPS-PDF_opt.ppd
└── custom
</pre>
<div class="mw-heading mw-heading2"><h2 id="Windows">Windows</h2></div>
<p><a href="Microsoft_Windows" title="Microsoft Windows">Microsoft Windows</a> also uses PPD files but converts these to a binary .BPD <a href="File_format" title="File format">file format</a> before using them. These, both PPD and BPD, are normally stored in <code>%WINDIR%\system32\spool\drivers\w32x86\3</code> on an x86 system, or <code>%WINDIR%\System32\spool\drivers\x64\3</code> on a 64 bit system.
</p><p>Updating a PPD file requires four steps:
</p>
<ol><li>stop the <a href="Spooling" title="Spooling">spooling</a> service;</li>
<li>edit the existing PPD file in place or replace it by an updated version;</li>
<li>remove the old BPD file;</li>
<li>restart the spooling service.</li></ol>
<p>This will automatically generate a new BPD from the updated PPD.
</p>
<div class="mw-heading mw-heading2"><h2 id="MIME_type">MIME type</h2></div>
<p>The MIME type for the CUPS variant of PPD is application/vnd.cups-ppd.<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text">PostScript Language Reference Manual Chapter 6.1 Using Page Devices page 393.</span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text">IANA: <a rel="nofollow" class="external free" href="https://www.iana.org/assignments/media-types/application/vnd.cups-ppd">https://www.iana.org/assignments/media-types/application/vnd.cups-ppd</a></span>
</li>
</ol></div>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160901200541/http://partners.adobe.com/public/developer/ps/index_specs.html">Adobe PostScript Language Specifications</a>
<ul><li><a rel="nofollow" class="external text" href="https://web.mit.edu/PostScript/Adobe/Documents/5003.PPD_Spec_v4.3.pdf">Adobe Tech Note 5003: PostScript Printer Description (PPD) File Format Specification, hosted on MIT</a></li>
<li><a rel="nofollow" class="external text" href="https://web.mit.edu/PostScript/Adobe/Documents/5645.PPD_Update.pdf">Adobe Tech Note 5645: Update to PPD Specification Version 4.3, hosted on MIT</a></li></ul></li></ul>
<style data-mw-deduplicate="TemplateStyles:r1271159938">
/* start https://en.wikipedia.org/ */


.mw-parser-output .asbox{position:relative;overflow:hidden}.mw-parser-output .asbox table{background:transparent}.mw-parser-output .asbox p{margin:0}.mw-parser-output .asbox p+p{margin-top:0.25em}.mw-parser-output .asbox-body{font-style:italic}.mw-parser-output .asbox-note{font-size:smaller}.mw-parser-output .asbox .navbar{position:absolute;top:-0.75em;right:1em;display:none}.mw-parser-output :not(p):not(.asbox)+style+.asbox,.mw-parser-output :not(p):not(.asbox)+link+.asbox{margin-top:3em}


/* end https://en.wikipedia.org/ */
</style></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2024-05-28" href="https://en.wikipedia.org/wiki/?title=PostScript_Printer_Description&amp;oldid=1226097831">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>